While most computers have internal memory devices and disk drives in which data and programs are stored, internal memory is generally not adequate for storing all of the software to be run on a computer and for storing all of the data which is stored in or generated by the computer. Further, internal memory is generally volatile, resulting in data stored in such memories being lost if, for any reason, the computer, or at least the memory portion thereof, does not receive electrical power for some period of time. Information stored in hard disk memory may also be lost or corrupted under some circumstances, such as if the hard disk is damaged. Internal memory and hard disks are also not readily portable, and are therefore not suitable for permitting programs and/or data on a computer to be sent to another facility or a back up location.
To provide the additional memory capacity, or in the event of fire, flood or the like at the computer facility, to provide a back up storage for programs and data to prevent the loss thereof, to provide program and data in a readily portable form and to permit archival records to be maintained, most computers have one or more floppy disk drives as built in or peripheral equipment on which such programs and data may be stored and from which programs and/or data may be read into the main computer memory. Typically, the user manually loads a blank floppy disk into the drive when back up or other write operations are to be performed, or loads a floppy disk containing desired information into the drive when a new program or new data (or previously stored programs or data which have been loaded onto a back up floppy disk) are to be read into main memory. This is an acceptable procedure so long as only a small number of floppy disks are required for a given write or read operation.
However, where for example 3.5 inch floppy disks are utilized, which is frequently the case for hard disk back-up, it may take up to three minutes, depending on the computer and disk drive being utilized, for a single floppy disk to be written onto during a back up operation, or for a single floppy disk to be read from during a restore operation, the loading of a long program or the loading of a substantial quantity of data. Since a large number of disks may be required to complete such an operation (in many cases ten or more), it is inconvenient for the operator to have to monitor the machine for a period which may run to over one hour to complete, for an entire back up or restore operation. It is therefore desirable that a mechanism be provided for permitting the disks to be automatically loaded and unloaded from the floppy disk drive during operations of this type so that such operations can be performed unattended, freeing the operator to perform other functions during this period, or permitting these functions to be performed at off hours when no operator is present.
While the desirability of such an automatic loading and unloading mechanism of computer media has been appreciated in the past, existing mechanisms for performing this function have been relatively complicated and expensive, the cost of such equipment rendering them suitable for use only with large systems, and precluding their use with smaller systems such as "personal computers (PC's)". However, personal computers are becoming increasingly prevalent in business applications where back up and restore operations are critical, and the software for such computers is becoming increasingly sophisticated, resulting in the need to load and unload large amounts of data into and out of such computers.
A need therefore exists for a relatively simple and inexpensive mechanism for automatically loading and unloading flat removable storage elements in general, and floppy disks in particular. Such mechanism should be particularly adapted for use with small computer systems such as, for example, PC's.